package com.xuelang.pipeline.app.resource.v1beta;

import com.google.gson.annotations.SerializedName;
import com.xuelang.pipeline.app.resource.v1beta.common.ParamValue;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Map;

/**
 * @author liuyuan.ly
 * @since 2024/5/30 14:17
 */

@NoArgsConstructor
@AllArgsConstructor
@Builder
@Data
public class V1Beta1ParamSpec {
    @ApiModelProperty(value = "参数名称", position = 0)
    private String name;

    @ApiModelProperty(value = "参数类型", notes = "string, array , object; 默认是string", position = 1)
    private String type;

    @ApiModelProperty(value = "参数描述", position = 2)
    private String description;

    @ApiModelProperty(value = "默认值", position = 3)
    @SerializedName("default")
    private ParamValue defaultValue;

    @ApiModelProperty(value = "参数类型描述 JSON Schema 属性", position = 4)
    private Map<String, String> properties;
}
